Non-volatile memory systems, such as flash memory, have been widely adopted for use in consumer products. Flash memory may be found in different forms, for example in the form of a portable memory card that can be carried between host devices or as a solid state disk (“SSD”) embedded in a host device. Flash memory may be written in pages and erased in blocks, so once a page is written, a rewrite may require the whole block to be erased. The memory device firmware may handle memory in logical groups and the logical to physical address table (i.e. the global address table or “GAT”) may have an entry for each logical group. Identification of which memory is bad may be necessary for decreasing the risk of losing stored data. For example, memory blocks that are identified as bad may be avoided entirely while good blocks or blocks that are not identified as bad may be used without restrictions. However, avoiding an entire memory block may unnecessarily reduce the overall capacity of the memory. Bad blocks may be replaced with spare blocks, but that also reduces the overall memory capacity, and an insufficient number of spare blocks on a particular die may result in the memory not being able to replace a particular bad block.